"""
递归就是自己调用自己,且必须要有出口
递归的编写可以先找到递推公式：
比如计算 累加
n 当 n =1 时候就是 1 ，当n != 1 时，计算（n-1）的累加，
    所以我们就写一个 负责累加的函数就好了，

    你不要关心这个递归的内部是如何实现的，就认为他是一个累加方法
"""
# 1-5数字的累加
def sub_number(num):
    # 递归的出口
    if num ==1 :
        return 1
    result = num + sub_number(num-1)
    return result

print(sub_number(5))


# 阶乘
def cheng_number(n):
    if n ==1:
        return 1
    return n*cheng_number(n-1)
print(cheng_number(4))





